package co.yixiang.hw.service;

import co.yixiang.hw.domain.YxUser;
import co.yixiang.hw.service.dto.YxUserDto;
import co.yixiang.hw.service.dto.YxUserQueryCriteria;
import com.alibaba.fastjson.JSONObject;
import org.springframework.data.domain.Pageable;
import java.util.Map;
import java.util.List;
import java.io.IOException;
import javax.servlet.http.HttpServletResponse;

/**
* @author Walert
* @date 2020-02-09
*/
public interface YxUserService {

    /**
    * 查询所有数据不分页
    * @param criteria 条件参数
    * @return List<YxUserDto>
    */
    List<YxUserDto> queryAll(YxUserQueryCriteria criteria);

    /**
     * 根据ID查询
     * @param uid ID
     * @return YxUserDto
     */
    YxUserDto findById(Integer uid);

    /**
    * 创建
    * @param resources /
    * @return YxUserDto
    */
    YxUserDto create(YxUser resources);

    /**
    * 编辑
    * @param resources /
    */
    void update(YxUser resources);

    /**
     * 根据手机号码获取用户信息
     * @param userName
     * @return
     */
    YxUserDto finByUserName(String userName);

    /**
     * 检查用户并自动注册方法
     * @return
     */
    YxUserDto checkUserAndRegister(JSONObject params);
}